function A=CAdams4PC(f,a,b,N.ya)
%f是微分方程右函数句柄
%a,b是白变量的取值区间[a,b]的端点
%N是区等分的个数
%ya表初值y(a)
%A=[x',y']是自变量X和解Y所组成的矩阵
 if N<4
return;
 end
 h=(b-a)/N
 x=gems(1. N+1)
y=zeros(1,N+1);
 x=a:h:b;
 y(1)=ya:
F=zeros(1,4);
 for i-T:N
 if is4
%用四阶Runge-Kutta-法求初始
kl=feval(f,x(i),y(i));
k2 =feval(f,x(i)+h/2,y(i)+(h/2)*k1);
k3=feval(f,x(i)+h/2,y(i)+(h/2)*k2);
k4-feval(, x() h, y( )
y(i 1)=y(i) (h/6)(k1 2k2 2k3 k4)
 eIse if i=
F- feval(,x(i-3i),y(-3);
y=y(i) (h/24)·(F·[-9,37,-59,55);%预报
 p-feval([, x(i 1).py):
F=[F(2)F(3)F(4)p
y(i 1)=y(i) (h/24)(F[1,-5,19,9]);%校正
 p-py: c=y(i )
 else
 F-feval(, x(i-3:).y(i-3: ))
%报
py=y(i) (h/24) (F[-9,37,-59,55]);
my=py-251(p-c)/270
%改进
 m=feval(f, x( 1),my):
F-[F(2)F(3)F(4)m]
cy=y(i) (h/24)(·[1,-5.19,9])
%校正
%改进
y(i 1)=cy 19(py-cy)/270
 p-py: c=cy:
 end
 [x',y'J: